This specification relates to encryption.
Full disk encryption is a technique that encrypts all the data on a hard disk drive. With most file systems, deleting data from a hard disk drive does not actually eliminate the data from the hard disk drive. Instead, the memory locations occupied by the data are marked as unused while the actual data remains. Thus, full disk encryption techniques encrypt both the used and unused portions of hard disk drives to ensure that no data is left unencrypted.
Writing data to a hard drive is a relatively non-destructive process with respect to the physical storage medium, i.e., data can be written a very large number of times to the memory locations of a hard drive without degradation of the storage medium. However, some types of computer storage devices have relatively limited life span in terms of read and write operations relative to hard disk drives. Solid-state drives and USB flash drives are examples of erasable computer storage devices in which the memory cells eventually wear out from repeated programming and erasure. To extend the overall life of such a memory device, the addressable sections of the memory device, such as blocks or pages, can be programmed and/or erased at similar rates by wear leveling. Wear leveling ensures that the memory cells of the memory device wear evenly, e.g., programming and/or erasing of memory cells occurs at a similar rate for all the memory cells over the life of the memory device.
Because full disk encryption encrypts both the used and unused portions of a memory device to ensure that no data is unencrypted, a full disk encryption prematurely ages a solid-state drive and premature expands a wear leveling table that is used for wear leveling operations. This can unnecessarily shorten the life of the storage device and degrade read and write access times.